package com.zw.pm.module.config.factory;

import com.zw.pm.gen.entity.Factory;
import com.zw.pm.module.board.multi.FactoryModel;

import java.util.List;

/**
 * @Description: 分厂 数据层
 *
 * @Author: China.sgl
 * @Date: 2019/9/16 09:11
 */
public interface FactoryDao {

    /**
     * 根据名称查询
     *
     * @param name name
     * @return Factory
     */
    Factory findByFactoryName(String name);

    /**
     * 根据条件查询
     *
     * @param factory 条件
     * @return List
     */
    List<Factory> findFactoryAll(Factory factory);

    /**
     * 根据 ID 数组查询
     *
     * @param ids ids
     * @return list
     */
    List<Factory> findIdIn(Integer[] ids);

    /**
     * 根据 ID 数组排除
     *
     * @param ids ids
     * @return List
     */
    List<Factory> findIdNotIn(Integer[] ids);

    /**
     * 查询任务下达工厂
     *
     * @param id 项目ID
     * @return list
     */
    List<Factory> findTaskFactory(Integer id);


    /**
     *@FunctionName: findFactorModelIdNotIn
     *@Description: 获取页面使用生产厂列表
     *@Author: 徐一贺
     *@CreateDate: 2020/3/21 9:24
     *@Phone: 18210416791
     *@Param: ids 查询条件
     *@Return: List<Factory> 生产厂列表
     *@Version: 1.0
     */
    List<FactoryModel> findFactorModelIdNotIn(Integer[] ids);
}